1. Field of the Invention
The present invention relates to rotating media storage systems. More particularly, the present invention relates to a method and system for joint spindle speed and head position control to reduce rotational latency and seek/settle time of the rotating media storage system, and thus increase the overall performance of the system.
2. Description of Related Art
Fast and accurate access of stored data while minimizing power consumption, noise, heat generation, and mechanical disturbances are some of the most important considerations when designing and optimizing rotating media storage systems. In addition, there is an ever-present desire to decrease the average time required to access any needed data on the rotating medium (for example, a disk) while maintaining reasonable costs for performing the access.
For current rotating media storage devices such as computer hard disks, compact disks (CDs and CD-ROMs), digital video disks (DVDs), magneto-optical disks, etc., the location of the stored data is generally tracked by two indicators: xe2x80x9ctrackxe2x80x9d and xe2x80x9csectorxe2x80x9d. The first indicator, xe2x80x9ctrackxe2x80x9d, refers to what track the data is located on, and the second indicator, xe2x80x9csectorxe2x80x9d, refers to the radial position on the track where the data is located (i.e., the sector/radial position is between 0 and 360 degrees).
In general, there are two types of data storage/data access on rotating media. The first is structured/ordered data storage/access and the second is random data storage/access. In structured/ordered data storage/access (for example, streaming video) all rotating media tracks are block-recorded next to each other, and the blocks are accessed in the order in which they are saved, thus making the stored data more compressed and more predictable to find and access. In random data storage/access (for example, transaction data for credit cards) the stored data may consist of numerous individual records located throughout the entire rotating media and accessing those individual records may be done in a random manner and not by adjacent blocks. Locating and randomly accessing such random stored data is more difficult and time-consuming.
Referring to FIG. 1, a simplified block diagram of an example rotating media storage device 10 (for example, a computer hard disk drive system) is illustrated. Rotating media storage device 10 includes a disk platter (for use with a disk) 20 and a disk drive read-write head assembly 25. The disk 20 rotates about a spindle 30, driven by a spindle motor 35, as controlled by a spindle motor control system 40.
Most existing rotating media storage systems, such as the computer hard disk drive shown in FIG. 1, have disk platters 20 that rotate (i.e., spin) at a fixed rotational speed (e.g., 5,000 rpm, 7,600 rpm, or 15,000 rpm). The spindle motor control system 40 is a low bandwidth (typically under 10 Hz) control system for maintaining the steady-state rotational speed of the spindle 30. The speed of revolution of the disk platter is therefore controlled by the spindle motor 35 and spindle motor control system 40.
The read-write head assembly 25 is attached to an actuator assembly 50 (actuator). In the hard disk drive example, the actuator 50 is usually a radial or voice coil motor (VCM) or in other applications may be a linear (push/pull) motor, etc. The actuator control system 55 is a high bandwidth (e.g., 400 Hz to 900 Hz) control system that seeks a new track 21 rapidly and maintains the head position over the rotating storage media track 21.
Disk drive interface controller 60 controls the overall operation of the disk drive system and the exchange of data between the disk drive and the host device such as a CPU. Read-write control 65 controls the read and write operations on the disk by the head assembly 25. Power supply 70 provides the necessary power to drive the disk drive system 10. In FIG. 1, power supply 70 is illustrated as being connected to spindle motor control 40 and actuator control 55, however, it should be noted that there could be multiple power supplies that are individually coupled to each of the controls and/or the power supply may be part of (or supplied by) the CPU. Other embodiments and variations on the connections of the power supply may also be used.
Limits do exist on how fast the read-write head assembly 25 can physically move from the outermost edge 20a of the disk platter 20 all the way to the innermost edge 20b of the platter 20. Furthermore, faster track seeks (i.e., faster movement of the head assembly 25) can lead to increases in noise generation, mechanical disturbance, power consumption, heat generation, and other conditions that may negatively impact the performance of the rotating media storage system.
Currently, some systems use trajectory optimization to improve the tracking of the head assembly 25 to the desired track. Such trajectory optimizations may be performed by minimizing the arrival time, tf, of the head to the desired track over the design trajectory of the actuator, uActuator(t). The trajectory optimization may be formulated as:       x    0    →      xe2x80x83    ⁢                                                        min              ⁢                              xe2x80x83                            ⁢                              (                                  t                  f                                )                                                                                        u              Actuator                                                                          subject              ⁢                              xe2x80x83                            ⁢              to              ⁢                              :                                                                                                        l                1                            ⁢                              xe2x80x83                            ⁢                              ⟨                                  xe2x80x83                                ⁢                                                      u                    Actuator                                    ⁢                                      xe2x80x83                                    ⁢                                      ⟨                                          xe2x80x83                                        ⁢                                          l                      2                                                                                                                                                                                x                  PES                                ⁡                                  (                                      t                    f                                    )                                            =              0                                                                                                                                x                    .                                    PES                                ⁡                                  (                                      t                    f                                    )                                            =              0                                                                                                            x                  PES                                ⁡                                  (                                      t                    0                                    )                                            =                              x                0                                                                                                                                              x                    .                                    PES                                ⁡                                  (                                      t                    0                                    )                                            =              0                                                                                                            J                  2                                ⁢                                  x                  ¨                                            =                              u                Actuator                                                        ⁢              xe2x80x83              →                  u        Actuator            ⁡              (        t        )            
where x0 is the initial radial position of the head position actuator, x(t) is the radial head position at time t, uActuator are the design variables of the actuator, l1 less than uActuator less than l2 are the constraints on the actuator authority where l1 and l2 are the lower and upper limits, respectively, based on the actuator constraints and hardware, xPES (t) is the radial head position error and xPES (t)=xDesiredxe2x88x92x(t), xPES (tf)=0 is the arrival position error, {dot over (x)}PES (tf)=0 is the arrival velocity error, xPES (t0)=x0 is the starting position error, {dot over (x)}PES (t0)=0 is the starting velocity error, and J2{umlaut over (x)}=uActuator is the physical equation of motion for radial head position where J2 is a coefficient of inertia and {umlaut over (x)} is acceleration.
It should be noted that the physical equations of motion given in the formulation above have been simplified for ease of understanding herein. As such, one with ordinary skill in the art would know that the equations of motion given in the formulation above are merely representational and other equations of motion with greater detail and more variables may be used.
This formulation addresses optimal head position (track seek).for constant spindle speed. In actuality the above trajectory optimization does not take into account the spindle speed at all because the spindle speed in this design is not a variable.
The solution to this trajectory optimization problem is the so-called switching function solution (Bryson and Ho, Applied Optimal Control, 1967). An approximation to this switching function is used in some systems and is described by PTOS (Proximate Time Optimal Solution) (See Franklin, Powell, and Workman, Digital Control, 1992, pp 583-584, Chapters 11 and 12). The switching function solution, also known as xe2x80x9cbang-bang controlxe2x80x9d, pushes as fast as it can for half the time and then reverses and pushes in the opposite direction for the remaining half of the time in order to reach a desired location. In other words, in the hard disk drive example, the switching function solution would first determine how long it would take to move the head from the starting position to the desired position (i.e., time period for arrival). Once the time period for arrival is determined, then the switching function solution pushes the actuator with the greatest force possible (given the constraints and conditions of the system) for half the length of the time period for arrival and then instantaneously reverses the direction of the push on the actuator (while keeping the same amount of force) for the remaining half of the time period for arrival. Using the switching function solution, the head arrives at the desired track with very little positioning error. However, the time period for arrival is not decreased and thus the latency of the system does not improve.
However, the most significant drawback with current rotating media storage designs is that the head position control system 55 is decoupled from (i.e., not joint with) the spindle motor control system 40. Therefore, in existing rotating media storage systems, there is no relationship between the spindle motor control 40 and the actuator motor control system 55.
The most widespread method used to access the data stored on rotating media involves simply moving the head to the right track as fast as the system is capable. Once the head reaches the desired track, the head signals that it has reached the desired track and then waits for the platter to spin and bring the desired data sector under the head for reading/writing. This method does not take into account the spindle/radial position (i.e., the specific sector on the rotating media or the angle at which the data is located radially) because the head position control system is decoupled from the spindle motor control. This configuration is inefficient and results in slow data access times of the stored data.
As an example, consider a current rotating media storage device, such as a disk drive system, where data to be accessed is located at a radial position/sector (xPES(tf),xcex8spindle(tf), where xcex8xcex5[0,2xcfx80)) that is close to or exactly parallel to the radial position of the read-write head, but is located on a different track. During the time it takes to position the head at the desired track, the platter will already have rotated a fraction of a revolution. Employing the fastest head position control system currently available will not enable the head to reach the data position in time. Therefore, the rotating media storage system will have to wait for the platter to rotate a full revolution until the desired data arrives back at the specific location where the head can finally access it.
Another existing rotating media storage design employs a method called xe2x80x9cJust in Time Seekxe2x80x9d to access stored data. The xe2x80x9cJust in Time Seekxe2x80x9d method takes into consideration the track and sector of the desired data. The xe2x80x9cJust in Time Seekxe2x80x9d method first calculates how much time it will take for the head to get to the desired track location. The method then predicts whether the head-will be able to reach the desired track location at the same time that the desired sector location would be in a read/write position under the head, given the specific spindle speed (which is always kept constant). If the prediction results indicate that the desired sector location will be missed, the rotating media storage system directs the head to take a slower than nominal track seek time. It should be noted that the xe2x80x9cJust in Time Seekxe2x80x9d method slows down the head to its lowest possible speed. The spindle speed never changes. Thus, the major drawback of the xe2x80x9cJust in Time Seekxe2x80x9d method is that the system is not getting the data any faster and consequently there is no improvement in data access time. The benefits of the xe2x80x9cJust in Time Seekxe2x80x9d method are the reduction in power consumption, noise, and heat generation due to the slower motion of the actuator head.
Yet another existing rotating media storage design employs a method that modifies the spindle speed based on the specific electrical power source used to power the rotating media storage device. This method selects a particular spindle speed that is best suited to the type of external power source (for example, micro battery, AC source, etc.) running the device. The only purpose for changing the spindle speed is to minimize the power consumption of the device. Once the spindle speed selection is finalized upon detection of the power source, the spindle speed remains constant throughout the device operation mode (or until the device is shutdown, in a standby mode, or until a different type of power source is to be used). One major disadvantage with this method is that it does not allow the spindle speed to vary based on the location of the requested data. The spindle speed selection is strictly based on the type of external power source used.
What is needed is a method and/or system that couples seek trajectory commands that direct the movement of the head from track to track with spindle speed change commands to either slow down or speed up the platter in order to more rapidly access the desired data (track, sector).
A method and system for joint spindle speed and head position control in rotating media storage systems are described. A controller changes the rotation speed of a spindle assembly based upon the position information of a desired data sector.
Other features and advantages of the present invention will be apparent from the accompanying drawings, and from the detailed description, which follow below.